package flyweighgt_pattern.ex2;

/**
 * @author 申书航
 * @version 1.0
 *
 * 享元模式（Flyweight Pattern）是一种结构型设计模式，其主要目的是通过共享对象来有效地支持大量细粒度的对象。
 * 在这个示例中，我们定义了一个枚举类型 PotionType，表示不同类型的药水。这些类型在应用中可以被共享，
 * 从而减少内存使用，提高性能。
 *
 * Enum 作为享元对象的一种实现方式，它能够确保所有的实例有且只有一个。
 * 本类定义了四种药水类型：
 *
 * HEALING        - 治疗药水
 * STRONG         - 强力药水
 * HOLY_WATER     - 圣水
 * INVISIBILITY    - 隐形药水
 *
 * 客户端可以通过这些共享的实例来获取所需类型的药水，而不必为每一种药水创建新的对象。
 */
public enum PotionType {
    HEALING, STRONG, HOLY_WATER, INVISIBILITY;
}
